﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace King.BaseUtility
{
    /// <summary>
    /// 配置项
    /// </summary>
    public class CfgItemEx
    {
        #region Const

        #endregion

        #region Field

        /// <summary>
        /// 编号
        /// </summary>
        public Guid ID
        {
            get;
            set;
        }

        /// <summary>
        /// 名称
        /// </summary>
        public string Name
        {
            get;
            set;
        }

        /// <summary>
        /// 描述
        /// </summary>
        public string Description
        {
            get;
            set;
        }

        #endregion

        #region Construction

        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="name">配置项名称</param>
        /// <param name="description">配置项描述</param>
        public CfgItemEx(string name, string description = "")
        {
            this.ID = Guid.NewGuid();
            this.Name = name;
            this.Description = description;
        }

        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="id">配置项编号</param>
        /// <param name="name">配置项名称</param>
        /// <param name="description">配置项描述</param>
        public CfgItemEx(Guid id, string name, string description = "")
        {
            this.ID = id;
            this.Name = name;
            this.Description = description;
        }

        /// <summary>
        /// 克隆一份当前对象
        /// </summary>
        /// <returns>对象副本</returns>
        public new CfgItemEx Clone()
        {
            return (CfgItemEx)this.MemberwiseClone();
        }

        #endregion

        #region Static Function

        #endregion

        #region Punlic Function

        #endregion

        #region Assist Function

        #endregion

    }

    public class CfgTableEx
    {

    }
}
